package com.lych.model.vo;


import com.lych.model.domain.UserInfo;
import com.lych.model.mongo.Visitors;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class StatisticsVo implements Serializable {

    private Integer id; //用户id
    private String avatar; //用户头像
    private String nickname; //昵称
    private String gender; //性别
    private Integer age; //年龄
    private String city; //城市
    private String education; //学历
    private Integer marriage; //婚姻状态
    private Integer matchRate; //匹配度
    private boolean alreadyLove; //是否喜欢

    /**
     * 在vo对象中，补充一个工具方法，封装转化过程
     */
    public static StatisticsVo init(UserInfo userInfo, Visitors visitors) {
        StatisticsVo vo = new StatisticsVo();
        BeanUtils.copyProperties(userInfo,vo);
        vo.setId(userInfo.getId().intValue());
        if (visitors != null){
            vo.setMatchRate(visitors.getScore().intValue());
        }else {
            vo.setMatchRate(50);
        }
        return vo;
    }
}